<?php

/*
	설명: 게시판 리스트 출력을 위한 인터페이스
	함수:
		- bolist: 이 함수를 호출하면, 데이터베이스를 호출하여, HTML태그를 생성해서 반환한다. 그리고 스타일 시트가 생성이 안되어 있으면 스타일 시트도 생성한다.
*/
interface IBolist {
	public function bolist($group, $unlist='');
}


/*
	설명: 최근 게시글을 출력하기 위한 인터페이스 앞으로 최근게시글의 종합판을 만들 예정이다.
	함수:
		- view: 이 함수를 호출하면 작성된 최근게시글 추출 알고리즘을 동원하여 HTML코드를 생성하여 보여준다.
*/
interface ILatest {
	public function view($rows);
    public function setUnlist($unlistGroup, $unlistBoard);
    public function setList($listGroup, $listBoard);
    public function viewReply($reply);
    public function viewComment($comment);
    public function reset();
    public function member($mb_id);
}


/*
	설명: 검색엔진
	함수:
		- go: 검색 시작
*/
interface ISearch {
	public function go($keyword);
}


/*
	설명: 위키 엔진. 게시글을 위키처럼 쉬운 링크와 참조가 가능하도록 하자는 취지이다.
	함수:
		- parse: 위키 문법이 적용된 게시글을 문자열로 넣으면 자동으로 파싱해서 HTML코드를 생선해서 반환해준다.
		- setPosition: 파싱하는 글의 위치를 입력한다. 위치를 입력하는 이유는 위키엔진에 의해서 검색한 결과중 현재글은 나오지 못하도록 하기위함이다.
*/
interface IWikiEngine {
	public function parse($content);
	public function setPosition($bo_table, $wr_id);
}


/*
	설명: 게시판의 특정페이지를 보여준다.
	함수:
		- view: 게시판과 게시글 아이디를 받아 출력해준다.
*/
interface IViewPage {
	public function view($bo_table, $wr_id, $view=array());
}


/*
	설명: 전체 사이트의 맵을 보여준다.
	함수:
		- show: 게시판과 게시글 아이디를 받아 출력해준다.
*/
interface ISiteMap {
	public function show($unlistGroup = array(), $unlistBoard = array());
}


/*
	설명: Todo List를 보여주고 Ajax를 이용해 컨트롤 한다.
	함수:
		- view: Toto List가 저장되어 있는 게시판 테이블명이다. 생성자에 테이블 명을 넣어도 되지만 출력할때 다시 설정 해 주어도 된다.
*/
interface ITodoList {
	public function view($bo_table='');
    public function setTable($bo_table);
}



/*
	설명: 모서리가 둥근 박스
	함수:
		- view: 설정된 내용을 둘러싼 라운드 박스를 출력한다.
        - setContent: 박스안의 내용을 설정
        - setRect: 박스의 가로 세로 설정
        - reset: 초기설정으로 되돌림
*/
interface IRoundBox {
    public function view($color, $fill=false, $border='3px', $content='');
    public function setContent($content);
    public function setRect($width, $height);
    public function reset();
}

?>